package com.javaex.book.services;

import java.math.BigDecimal;
import java.util.List;

import com.javaex.book.pojo.Book;
import com.javaex.book.utils.ReturnResult;

/**
 * 图书相关服务
 *
 * @author 黄星琦
 * @Date 2022年5月23日
 */
public interface BookService {
	
	/**
	 * 获取图书总数量
	 * @param minPrice 最低价
	 * @param maxPrice 最高价
	 * @return 图书总数
	 */
	Integer countBooks(BigDecimal minPrice, BigDecimal maxPrice);
	
	/**
	 * 根据图书id查询图书数据
	 * @param id 图书id
	 * @return 图书数据
	 */
	Book getBookById(Integer id);
	
	/**
	 * 获取图书数据
	 * @param start SQL查教起始位置
	 * @param pageSize 页容量
	 * @param minPrice 最低价
	 * @param maxPrice 最高价
	 * @return 图书数据
	 */
	List<Book> getBookList(Integer start, Integer pageSize, BigDecimal minPrice, BigDecimal maxPrice);

	/**
	 * 添加图书
	 * @param book 图书信息
	 * @return 添加结果
	 */
	ReturnResult addBook(Book book);
	
	/**
	 * 修改图书
	 * @param book 图书信息
	 * @return 修改成功的记录数
	 */
	ReturnResult updateBook(Book book);
	
	/**
	 * 删除图书
	 * @param id 图书id
	 * @return 删除记录数
	 */
	ReturnResult deleteBook(Integer id);
}
